package com.etc.common;

import lombok.Data;

/**
 * @Author kalista
 * @Description 自定义响应数据结构
 *
 * 这个类提供给  H5 / IOS / 安卓 / 小程序 提供服务
 * 前端接受类数据（json object ） 根据自己业务来实现相关功能
 *
 * 200 成功
 * 500 错误 错误信息msg 字段
 * 501
 * 502
 * 503
 *
 *
 * @Date 2021/2/19  15:53
 **/
@Data
public class ResultBody {


    // 状态码
    private Integer code;

    // 响应信息
    private String msg;

    // 响应数据
    private Object data;




    /**
     * 请求成功后返回
     * @return
     */
    public static  ResultBody ok(Object object){
        ResultBody resultBody = new ResultBody();
        resultBody.setCode(ResultStatusEnums.SUCCESS.getType());
        resultBody.setMsg(ResultStatusEnums.SUCCESS.getValue());
        resultBody.setData(object);
        return resultBody;
    }

    public static  ResultBody ok(){
        ResultBody resultBody = new ResultBody();
        resultBody.setCode(ResultStatusEnums.SUCCESS.getType());
        resultBody.setMsg(ResultStatusEnums.SUCCESS.getValue());
        return resultBody;
    }


    /**
     * 错误调用
     * @param resultStatusEnums
     * @return
     */
    public static  ResultBody error(ResultStatusEnums resultStatusEnums){
        ResultBody resultBody = new ResultBody();
        resultBody.setCode(resultStatusEnums.getType());
        resultBody.setMsg(resultStatusEnums.getValue());
        return resultBody;
    }
}
